Importing Salesforce Data Overview

Updates Allowed

An internal flag _CSUpdateAllowed is used to determine if Salesforce data is allowed to be imported into ClientSpace. This is a configurable setting that changes programmatically depending on the state of the Client Master Status.

Work Queue

Object must be named Work_Queue__c
Must contain OpportunityID__c and Complete__c fields
Complete__c must be set to false when the record is created in Salesforce
Duplicate Opportunities in multiple Work Queue records are ignored
If the import is successful,
Work Queue OpportunityID__c is set to Empty
Complete__c is set to true

Organization

Creates new Org or updates an existing Org
General Notes marked Updated/Created from the SalesforceAPI
Org ImportID is set to Salesforce Account ID
Only updates existing Org data with Salesforce data if _CSUpdateAllowed
Org is saved from the database, no biz logic executed

Org Other Info

Creates new Org Other Info or updates existing Org Other Info
All fields and values are retrieved from the current installation (custom fields are available)
Only updates existing Org Other Info data with Salesforce data if _CSUpdateAllowed (or when creating a new record)
Org Other Info is saved from the database, no biz logic executed

Client Master

Creates new Client Master and workspace if associated Org has no workspace (must have client template configured for this to function)
Updates Client Team Sales Admin User after workspace is created (to Org Assigned To)
The new Client Master is saved using the dataform pipeline Default
After the new Client Master is created (or Client Master exists)
fkParentCompanyID is set to Salesforce Account/ParentId associated CS Organization (if exists)
All fields and values are retrieved from the current installation (custom fields are available)
Adds Org Node for Biz Logic access (similar to a Client Master save from the UI)
Only updates existing Client Master data with Salesforce data if _CSUpdateAllowed
Updated Client Master is saved from the dataform pipeline SalesforceAPI
Client Location
Creates new Client Location or updates existing Client Location
If new, sets LocationName("MAIN"), luLocationType("Main"), SyncToM("P"), SyncToB("P")
All fields and values are retrieved from the current installation (custom fields are available)
Only updates existing Client Location data with Salesforce data if _CSUpdateAllowed (or when creating a new record)
Client Location is saved from the dataform pipeline SalesforceAPI
Contacts
Retrieves all Salesforce Contacts associated with Salesforce Account
Looks up each contact by ClientSpace ImportID
Creates new Contact if ImportID not found
Always set IsActive(True), SyncWithOrganizationAddress(false), ImportID(SF Contact ID)
Ignores _CSUpdateAllowed (always syncs Salesforce data)
Contact is saved from the database, no biz logic executed
Contact Other Info
Updates or creates Contact Other Info for each Salesforce Contact (from Contacts above)
All fields and values are retrieved from the current installation (custom fields are available)
Ignores _CSUpdateAllowed (always syncs Salesforce data)
Contact Other Info is saved from the database, no biz logic executed
Other Dataforms
Any Dataform mapped (Import Map Header) is included
Iterates through each mapped Dataform
Retrieves existing Dataform from Workspace associated with Salesforce Account (CS Organization)
Creates dataform if one does not exist in Workspace
Dataform is saved from the dataform pipeline SalesforceAPI
Only updates existing dataform data with Salesforce data if _CSUpdateAllowed (or when creating a new record)

Related Topics: